using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;

namespace My.IdlConverter.Core.Exceptions
{
    [Serializable]
    public class InterfaceNotFoundException : ApplicationException
    {
        private string _clueWord = "";

        public InterfaceNotFoundException()
            :base()
        {
        }

        public InterfaceNotFoundException(string message)
            :base(message)
        {
        }

        public InterfaceNotFoundException(string message,string clueWord)
            :base(message)
        {
            _clueWord = clueWord;
        }

        public string ClueWord
        {
            get
            {
                return _clueWord;
            }
        }

        protected InterfaceNotFoundException(SerializationInfo info, StreamingContext context)
            :base(info,context)
        {
            info.AddValue("InterfaceClueWord",_clueWord);
        }

        public InterfaceNotFoundException(string message, Exception innerException)
            :base(message,innerException)
        {
        }
    }
}
